#ifndef EXAMDIALOG_H
#define EXAMDIALOG_H

#include <QButtonGroup>
#include <QCheckBox>
#include <QDialog>
#include <QGridLayout>
#include <QLabel>
#include <QRadioButton>
#include <QTextEdit>
#include <QTimer>

namespace Ui {
class examdialog;
}

class examdialog : public QDialog
{
    Q_OBJECT

public:
    explicit examdialog(QWidget *parent = nullptr);
    ~examdialog();
    // 初始化计时器
    void initTimer();
    // 初始化布局管理器
    void initLayout();
    // 初始化文本编辑器 - 返回值代表是否初始化成功
    bool initTextEdit();
    // 初始化按钮标签
    void initButtons();
    // 判断是否有没做的题目
    bool hasNoSelect();

private:
    // 这个dialog没用到ui文件
    // Ui::examdialog *ui;

    // 计时器
    QTimer *m_timer;
    // 用时
    int m_timeGo;

    // 控件：考试题库内容
    QTextEdit *m_textEdit;
    // 控件：题目标签
    QLabel *m_titleLalbels[10];
    // 控件：单选按钮组 - 一共十道题
    QButtonGroup *m_btnGroups[9];
    // 控件:单选题按钮
    QRadioButton *m_radioBtns[32];
    // 控件：多选题按钮
    QCheckBox *m_checkBtns[4];
    // 控件：判断题A选项
    QRadioButton *m_radioA;
    // 控件：判断题B选项
    QRadioButton *m_radioB;
    // 控件：布局管理器
    QGridLayout *m_layout;
    // 控价：答案
    QStringList m_answerList;

// 插槽
private slots:
    // 刷新考试时间
    void freshTime();
    // 获取考试成绩
    void getScore();
};

#endif // EXAMDIALOG_H
